#pragma once
#include "StdAfx.h"

class CutEntity_cl
{
public:
	CutEntity_cl();
	~CutEntity_cl();

	void Release();

	void CreateEntity(const char* LeftModelFile, const char* RightModelFile);
	void Reset(const char* LeftModelFile, const char* RightModelFile);
	void SetRotationMatrix(const hkvMat3& matrix);
	void SetVisible(bool visible);
	void SetPosition( const hkvVec3& vPos );
	void SetScaling( const hkvVec3& vScale );
	void SetLPosition( const hkvVec3& vPos ){ m_pCutLEntity->SetPosition(vPos); }
	void SetRPosition( const hkvVec3& vPos ){ m_pCutREntity->SetPosition(vPos); }
	void SetOrientation( const hkvVec3& vYPR );
	void IncOrientation( const hkvVec3& vYPR );
	void IncROrientation( const hkvVec3& vYPR ){ m_pCutREntity->IncOrientation(vYPR); }
	void IncLOrientation( const hkvVec3& vYPR ){ m_pCutLEntity->IncOrientation(vYPR); }

private:
	VisBaseEntity_cl* m_pCutREntity;
	VisBaseEntity_cl* m_pCutLEntity;

	hkvMat3 m_ResetCutRMatrix;
	hkvMat3 m_ResetCutLMatrix;

	unsigned int m_iCutRVisibleBitMask;
	unsigned int m_iCutLVisibleBitMask;
};
